<?php 
	/*
	La classe de connexion va permettre d'initialiser la connexion à la bd. Pour cela elle appelle
	la classe Config qui va lire le fichier config.ini et recuperer les parametres de connnexion
	Cette classe implemente egalement le pattern singleton ce qui evite d'avoir plusieurs connexions à la base ouvertes. (on a toujours qu'une)
	*/
	
	Class Connexion {
		
	
		protected  $host;
		protected  $db;
		protected  $user;
		protected  $pass;
		
		private static $instance ;
		protected $connex;
		
		private function __construct (){
			
			//on recupere les paramétres de connexion
			$config=Config::getConfig("database");
			$this->host=$config['host'];
			$this->db=$config['db'];
			$this->user=$config['user'];
			$this->pass=$config['pass'];
			
			//on appaelle le driver mysqli pour creer la connexion
			$this->connex=new mysqli($this->host,$this->user,$this->pass,$this->db);
				
			if($this->connex->connect_errno){

				throw new Exception('erreur mysql'.$this->connex->connect_error);

			}

			
		}
		
		//le singleton 
		public static function getInstance(){
			
			if (!isset(self::$instance)){
				self::$instance=new Connexion();
			}
			return self::$instance;
		}
	
		//on recupere la connexion
		public function getConnexion(){
		 return $this->connex;
		}
	}
	
?>